$(function () {
  // 点击了登录盒子的去注册按钮
  // 切换到注册盒子 登录盒子隐藏
  // 点击了注册盒子的去登录按钮
  // 切换到登录盒子 注册盒子隐藏
  // @ts-check
  $('#link_reg').on('click', () => {
    $('.login-box').hide();
    $('.reg-box').show();
  });

  $('#link_login').on('click', () => {
    $('.login-box').show();
    $('.reg-box').hide();
  });

  const { form, layer } = layui;
  // 定义校验规则
  form.verify({
    pwd: [/^[\S]{6,12}$/, '密码不符合规则'],
    repwd: function (val) {
      // val === pwd return 错误提示
      const pwd = $('.reg-box [name=password]').val();
      if (val !== pwd) {
        return '密码不一致';
      }
    },
  });

  $('#form_reg').on('submit', (e) => {
    e.preventDefault();

    $.ajax({
      type: 'POST',
      url: '/api/reguser',
      data: {
        username: $('#form_reg [name=username]').val(),
        password: $('#form_reg [name=password]').val(),
      },
      success(res) {
        if (res.status !== 0) return layer.msg(res.message);
        layer.msg('注册成功');
        $('#link_login').click();
      },
    });
  });

  $('#login_form').on('submit', function (e) {
    e.preventDefault();
    /**
     * @type {import('jquery').ajax}
     */
    $.ajax({
      method: 'POST',
      url: '/api/login',
      data: $(this).serialize(),
      success({ message, status, token }) {
        if (status !== 0) return layer.msg(message);
        layer.msg('登录成功');
        localStorage.setItem('token', token);
        location.href = '/index.html';
      },
    });
  });
});
// 提交步骤
// git add .
// git commit -m '完成了登录功能'
// git push -u origin login
// git checkout master
// git merge login
// git push
